Method and apparatus for managing the display of messages of a group chat

ABSTRACT

A method includes: upon opening a target communication window, displaying a first subset of communication items target communication window, without concurrently displaying a second and a third subset of communication items in the target communication window, wherein: the first, second, and third subsets of communication items have been received after last closure of the target communication window, and the first subset is received after the second subset, and the second subset is received after the third subset; in response to receiving a second user request to display earlier received communication items and in accordance with a determination that the second user request meets predefined list rollback criteria: ceasing to display the first subset of communication items in the target communication window; and displaying the third subset of communication items in the target communication window, without first displaying the second subset of communication items in the target communication window.

RELATED APPLICATIONS

This application a continuation of U.S. patent application Ser. No.15/190,005, entitled “METHOD AND APPARATUS FOR MANAGING THE DISPLAY OFMESSAGES OF A GROUP CHAT”, filed on Jun. 22, 2016, which is acontinuation application of PCT Patent Application No.PCT/CN2015/070166, entitled “METHOD AND APPARATUS FOR MANAGING THEDISPLAY OF MESSAGES OF A GROUP CHAT” filed on Jan. 6, 2015, which claimspriority to Chinese Patent Application No. 201410180845.3, entitled“METHOD AND APPARATUS FOR DISPLAYING A MESSAGE LIST” filed on Apr. 30,2014, all of which are incorporated by reference in their entirety.

TECHNICAL FIELD

The disclosed implementations relate generally to the field of computertechnologies, and in particular, to method and an apparatus for managingthe display of messages of a group chat.

BACKGROUND

With the rapid development of internet technologies, instant messagingbased on the Internet brings people a lot of conveniences, and alsobecomes a main trend of the present network businesses. Instantmessaging applications are convenient for people to communicate onlineand share such information as pictures, videos and the like anytime andanywhere.

Generally, when a user uses the instant messaging application to chat, acommunication window corresponding to a certain friend or group needs tobe opened. Communication messages sent by each of the communicationparties (including the user) may all be displayed on the communicationwindow in a form of message list, and may be displayed from top tobottom in time sequence, wherein an earlier message is displayed in anupper position. When the user opens the communication window, if themessage list contains many communication messages, generally thecommunication window preferentially displays the last-receivedcommunication message. In a process of implementing the presentapplication, the inventor finds the prior art has at least the followingproblems. After the user closes a certain communication window, if alarge number of new communication messages corresponding to thecommunication window are received; when the user opens the communicationwindow again, the communication window displays the last-receivedcommunication message. At this time, if the user wants to read theearlier-received communication messages from the communication windowclosed last time, the user needs to scroll up the message list from thebottom (the position of the latest communication message), and reads thecommunication messages one by one to look up the correspondingcommunication message so as to acquire the corresponding information,which causes a quite low information acquisition efficiency.

SUMMARY

The above deficiencies and other problems (e.g., bad user experience)associated with the conventional approach of browsing messages arereduced or eliminated by the present application disclosed below. Insome embodiments, the present application is implemented in a computingdevice (e.g., a PC, a tablet or a smartphone) that has one or moreprocessors, memory and one or more modules, programs or sets ofinstructions stored in the memory for performing multiple functions.Instructions for performing these functions may be included in acomputer program product configured for execution by one or moreprocessors.

In accordance with some embodiments of the present application, a methodfor computer-implemented method for managing the display of messages ona screen of a computing device is performed at the computing devicehaving one or more processors and memory for storing program modules tobe executed by the processors. The method includes: receiving a firstuser request to open a target communication window on the screen,wherein the target communication window corresponds to a group chatamong multiple users of an online messaging application; in response tothe first user request, opening the target communication window anddisplaying a first set of messages associated with the group chat in thetarget communication window, wherein the first set of messages werereceived by the computing device after last closure of the targetcommunication window and includes a recently-received message; receivinga second user request to access an earlier-received message after thelast closure of the target communication window; and in response to thesecond user request, replacing the display of the first set of messageswith the display of a second set of messages in the target communicationwindow, wherein the second set of messages were received by thecomputing device after the last closure of the target communicationwindow and includes the earlier-received message. In accordance withsome embodiments of the present application, a computing device includesone or more processors; memory; and one or program modules stored in thememory for performing the method mentioned above. In accordance withsome embodiments of the present application, a non-transitory computerreadable storage medium stores one or more program modules configuredfor execution by a computing device that includes one or more processorsand memory for performing the method mentioned above.

BRIEF DESCRIPTION OF DRAWINGS

The aforementioned implementation of the invention as well as additionalimplementations will be more clearly understood as a result of thefollowing detailed description of the various aspects of the inventionwhen taken in conjunction with the drawings. Like reference numeralsrefer to corresponding parts throughout the several views of thedrawings.

In order to illustrate the technical solutions in the embodiments of thepresent application more clearly, the accompanying drawings used in thedescriptions of the embodiments will be described simply hereinafter.Apparently, the accompanying drawings described hereinafter are merelysome embodiments of the present application. Those having ordinaryskills in the art may also figure out other accompanying drawingsaccording to the accompanying drawings without creative work.

FIG. 1 is a flow chart of a method for managing the display of messagesof a group chat according to embodiments of the present application;

FIGS. 2A-2D are schematic diagrams of interface display according to theembodiments of the present application;

FIG. 3 is a structural block diagram of an apparatus for displaying amessage list according to the embodiments of the present application;and

FIG. 4 is a structural block diagram of a computing device according tothe embodiments of the present application.

DETAILED DESCRIPTION

To make the object, technical solution and advantages of the presentapplication more clear, the present application is further described indetail with reference to the embodiments hereinafter.

Embodiment 1

Embodiment of this application provides a method for managing thedisplay of messages of a group chat on the screen of a computing device,e.g., a smartphone, a tablet computer, a laptop, a desktop, etc. Asshown in FIG. 1, the process flow of the method may comprise thefollowing steps.

Step 101: Receive a first user request to open a target communicationwindow. In some embodiments, the target communication window correspondsto a group chat among multiple users of an online messaging applicationrunning on the computing device.

Step 102: In response to the first user request, open the targetcommunication window, and display a first message list in the targetcommunication window with current display located to the position of arecently-received communication message (e.g., the last-receivedcommunication message before the opening of the target communicationwindow). In some embodiments, the first message list corresponds to afirst set of messages associated with the group chat in the targetcommunication window and the first set of messages were received by thecomputing device after last closure of the target communication windowand includes a recently-received message.

Step 103: After receiving a second user request (e.g., a presetinterface operation instruction), display a second message list in thetarget communication window with current display located to the positionof the target communication message, wherein the target communicationmessage is one of a second set of messages received by the computingdevice after the last closure of the target communication window.

In the embodiment of the present application, the computing devicereceives the first user request to open the target communication window,opens the target communication window, and displays the message list inthe target communication window with current display located to theposition of a recently-received communication message (e.g., thelast-received communication message before the opening of the targetcommunication window) for display; after receiving a second user request(e.g., a preset interface operation instruction), displays the messagelist in the target communication window with current display located tothe position of the target communication message, wherein the targetcommunication message is an earlier-received communication message afterthe last closure of the target communication window. In this way, thecurrent display of the message list may move directly to the position ofan earlier-received communication message after the last closure of thetarget communication window through the preset interface operationinstruction, and the user does not need to scroll the message list tolook up, so that the information acquisition efficiency may be improved.

Embodiment 2

The embodiment of the present application provides a method for managingthe display of a set of messages associated with a group chat, wherein amain body for performing the method may be a computing device installedwith a communication application (such as an instant messagingapplication), such as a computer, a mobile phone, a tablet computer andthe like. The process flow as shown in FIG. 1 will be described indetail hereinafter with reference to the detailed description of theembodiments, wherein the contents may be as follows.

Step 101: Receive a first user request to open a target communicationwindow, wherein the communication window is a window for browsing andentering the communication message in the communication application(e.g., an instant messaging application). Each communication window maybe associated with a group chat involving one or more target accounts.The target account is an account that communicates with a local accountof the computing device via the group chat, for example, thecommunication window may either be a communication window correspondingto the account of a certain friend, or be a communication windowcorresponding to a certain group. In the communication window, a messagelist may be arranged for displaying the communication messages sent bythe local account and the target account. The communication contents maybe displayed from top to bottom in time sequence, and an earlier messageis displayed in an upper position. An entry frame may also be arrangedon the communication window for entering the communication contents. Thetarget communication window may be a communication window correspondingto any target account.

During implementation, when a user needs to communicate with a certainfriend or group, or needs to view the communication message of a certainfriend or group, the user may open the communication applicationfirstly, and then click in a communication account list (namely a friendlist) to select a corresponding account or group. At this time, a firstuser request to open the target communication window may be triggeredand generated, wherein this target communication window is thecommunication window corresponding to the account or group selected bythe user. Alternatively, after the computing device receives thecommunication message sent by a certain account, a message prompt iconof the account may be displayed in a certain designated position (suchas the bottom right corner) on a screen; and the user may click ordouble-click the message prompt icon so as to trigger and generate thefirst user request to open the target communication window.

Step 102: Open the target communication window, and display a firstmessage list in the target communication window with current displaylocated to the position of a recently-received communication message(e.g., the last-received communication message before the opening of thetarget communication window). In some embodiments, the targetcommunication window includes a message list rollback button (104, FIG.1).

During implementation, after a communication application of thecomputing device receives the foregoing user request to open the targetcommunication window, the target communication window may be triggeredand displayed. As shown in FIG. 2A, using a mobile phone for example,the target communication window is a communication window of a certaingroup chat. A message list may be displayed in the target communicationwindow. The communication messages sent by each communication party aredisplayed in the message list from top to bottom in time sequence. Thecommunication message at the bottom of the message list is thelast-received communication message 200 in the message list. For themessage list shown in FIG. 2A, assuming that there are a large number ofcommunication messages received after the user closed the targetcommunication window last time (e.g., the communication messages sent byother users in the group have been quite a lot after the user closed thetarget communication window), the communication messages in the messagelist currently displayed are usually a few most recently-receivedcommunication messages. In order to find an earlier-receivedcommunication message after the last closure of the target communicationwindow, the user may scroll up from the bottom of the message list toread the communication messages one by one. But as shown in FIG. 2A, amessage list rollback button 201 is displayed in the communicationwindow as a shortcut to the earlier-received communication message. Themessage list rollback button 201 may be an arrow type towards the upwarddirection. The message list rollback button 201 is used for triggeringand rolling back the message list to the position of an earlier-receivedcommunication message after the last closure of the target communicationwindow. Specific operating process is described in detail in the restcontents.

Optionally, in order to improve the utilization ratio of the messagelist rollback button 201, certain display conditions may be set for themessage list rollback button 201. Several feasible processing mannersfor displaying the message list rollback button 201 are describedhereinafter based on different display conditions.

Manner I: Display the message list rollback button when the total numberof the newly-received communication messages after the last closure ofthe target communication window exceeds a preset number threshold.During implementation, when setting this number threshold, the numberthreshold may be set to be greater than or equal to the maximum numberof the communication messages that can be displayed in the message listat the same time, which is namely the number of the communicationmessages that can be displayed in the message list at the same time ifthe content of each piece of communication message does not exceed oneline. When the number of the newly-received communication messages afterthe last closure of the target communication window exceeds the numberthreshold, the earlier-received communication messages may not bedisplayed in the target communication window when opening the targetcommunication window this time. At this moment, the message listrollback button may be displayed for quickly rolling back the messagelist.

Manner II: Display the message list rollback button when thecorresponding display length of the newly-received communicationmessages in the message list exceeds a preset length threshold after thelast closure of the target communication window. During implementation,when setting this length threshold, the length threshold may be set tobe greater than or equal to the maximum length of the communicationmessages that can be displayed in the message list at the same time,which is namely the length of the region in the message list fordisplaying the message list. Through the foregoing setting on the lengththreshold, if the display length of the newly-received communicationmessages in the message list after the last closure of the targetcommunication window exceeds the length threshold, then theearlier-received communication messages may not be displayed in thetarget communication window when opening the target communication windowthis time. At this moment, the message list rollback button may bedisplayed for quickly rolling back the message list.

Step 103: After receiving a second user request (e.g., a presetinterface operation instruction), display the message list in the targetcommunication window with current display located to the position of thetarget communication message, wherein the target communication messageis an earlier-received communication message after the last closure ofthe target communication window. In some embodiments, theearlier-received message is the first message received by the computingdevice after the last closure of the target communication window. Insome other embodiments, the earlier-received message is the first of agroup of messages all received within a predefined time interval afterthe last closure of the target communication window. For example, theearlier-received message may be preceded by at least another messagereceived by the computing device after the last closure of the targetcommunication window and there is at least a predefined time gap betweenthe other message and the earlier-received message. A group chat maylast for a long time and cover many different topics. As will bedescribed below, heuristic rules may be used for identifying a group ofmessages within the group chat, which covers a specific topic. Forexample, the temporal proximity of messages within the group, commonkeywords appearing within the group of messages, time gaps between thegroup of messages and other messages and identities of users related tothe group of messages can be used for defining the group of messagesthat are related to the same topic. The interface operation instructionis an instruction triggered by the interface operation of the user. Thepreset interface operation instruction may be a designated interfaceoperation instruction for triggering the message list to rollback, andmay be freely set according to the actual demands. For example, thepreset interface operation instruction may either be a click instructionfor clicking a certain position, a certain icon or a certain button, oran instruction triggered by long-pressing any position of the screen,and the like.

During implementation, after the user performs a designated operation totrigger the preset interface operation instruction, the communicationapplication may perform the rollback operation on the message list inthe target communication window to display the message list in thetarget communication window with current display located to the positionof the first updated communication message (namely the foregoing targetcommunication message) after the last closure of the targetcommunication window. When the message list is displayed on thisposition, one or more communication messages before this targetcommunication message, which are namely one or more communicationmessages latest updated after the last closure of the targetcommunication window, may be displayed. Several feasible processingmanners of step 103 are given hereinafter based on different displayconditions.

Manner I: For the foregoing situation of displaying the message listrollback button, display the message list in the target communicationwindow with current display located to the position of the targetcommunication message when receiving the click instruction correspondingto the message list rollback button.

During implementation, after the user opens the target communicationwindow, if the user wants to read from the first updated communicationmessage after the last closure of the target communication window, theuser may click the message list rollback button 201 displayed on thetarget communication window through a manner like point contact with amouse or finger. At this moment, the message list may be triggered tomove to the position of an earlier-received communication message afterthe last closure of the target communication window. In someembodiments, a certain deletion mechanism may be set for the foregoingmessage list rollback button 201. For example, the message list rollbackbutton 201 may be removed (105, FIG. 1) from the window after displayingthe message list in the target communication window with current displaylocated to the position of the target communication message. Duringimplementation, after the user opens the target communication window, ifthe message list is scrolled to the position of the foregoing targetcommunication message through a manner of scrolling the message list,some changes may be performed on the icon of the message list rollbackbutton 203 firstly at this moment. As shown in FIG. 2B, the arrowdirection of the icon may be pointed to the target communication messageon the left. In this example, the earlier-received message 207 is thefirst message received by the mobile device after the last closure ofthe target communication window because the message 205 is thelast-received communication message before the last closure of thetarget communication window. After lasting for certain duration (such as2 seconds), the message list rollback button 203 may be removed from thetarget communication window, as shown in FIG. 2C. Or, if the currentdisplay of the message list moves to the position of the foregoingtarget communication message through a manner of triggering theforegoing preset interface operation instruction by the user, somechanges may be made on the icon of the message list rollback buttonfirstly at this moment. As shown in FIG. 2B, the arrow direction of theicon may be pointed to the target communication message on the left;after lasting for certain duration (such as 2 seconds), the message listrollback button may be removed as shown in FIG. 2C.

FIG. 2D depicts another embodiment of the present application in whichthe message list rollback button 203 points to an earlier-receivedmessage 207 that is not the first message received after the lastclosure of the target communication window. In this example, the firstthree messages are related to the topic of where to have lunch. Butbefore the arrival of the message 208, the user of the mobile devicecloses the target communication window. As a result, the message 208becomes the earliest-received message after the last closure of thetarget communication window. Referring back to FIG. 2A, the topic of themessages shown therein is a meeting, not the lunch. Therefore, the usermay be misled if a user selection of the message list rollback button201 triggers the display of the message 208 at the bottom of the screenshown in FIG. 2D. In this case, the computing device may invoke certainheuristic rules described above to identify that the message 207 is thefirst of a group of messages related to the same topic about themeeting. Note that there is a significant time gap between the message207 and the message 208 in FIG. 2D, which may be used for clusteringdifferent messages within a group chat into different groups related todifferent topics. Note that FIG. 2D is for illustrative purpose. In reallife, there could be a number of messages preceding the message 207 suchthat the earliest-received message 208 may not be shown in the screen atall. In some embodiments, the screen may display another message listrollback button (not shown in FIG. 2D) such that the user can quicklyaccess another group of message on a different topic discussed bymembers of the group chat before the meeting topic. In other words, theuser can keep pressing the message list rollback button to browsevarious topics covered the group members.

Manner II: when receiving the interface operation instruction triggeredby a touch signal satisfying the preset conditions, display the messagelist in the target communication window with current display located tothe position of the target communication message.

The preset conditions may be conditions for restraining such features astime duration or sliding trajectory and the like of the touch signal.During implementation, the preset condition may be set so that the timeduration reaches a preset value (such as 2 seconds). In this way, afterthe user opens the target communication window, if the user wants toread from the first updated communication message after the last closureof the target communication window, then the user may be in pointcontact with any position of the target communication window withfingers. When the lasting duration of the touch signal produced by pointcontact reaches the preset duration threshold, the message list may betriggered to move to the position of an earlier-received communicationmessage after the last closure of the target communication window. Or,the preset condition may be set as satisfying the preset slidingtrajectory features, for example, the sliding trajectory forms a closedgraph and the like. In this way, after the user opens the targetcommunication window, if the user wants to read from the first updatedcommunication message after the last closure of the target communicationwindow, the user may be in point contact with any position of the targetcommunication window with fingers and perform a corresponding slidingoperation. When the sliding trajectory of the touch signal producedsatisfies the preset sliding trajectory features, the message list maybe triggered to move to the position of an earlier-receivedcommunication message after the last closure of the target communicationwindow.

In the embodiment of the present application, a computing devicereceives the first user request to open the target communication window,opens the target communication window, and displays the message list inthe target communication window with current display located to theposition of a recently-received communication message (e.g., thelast-received communication message before the opening of the targetcommunication window); after receiving a second user request (e.g., apreset interface operation instruction), displays the message list inthe target communication window with current display located to theposition of the target communication message, wherein the targetcommunication message is an earlier-received communication message afterthe last closure of the target communication window. In this way, thecurrent display of the message list may move directly to the position ofan earlier-received communication message after the last closure of thetarget communication window through the preset interface operationinstruction, and the user does not need to scroll the message list tolook up, so that the information acquisition efficiency may be improved.

Embodiment 3

Based on the same technology concepts, the embodiment of the presentapplication further provides an apparatus for displaying a message list.As shown in FIG. 3, the apparatus comprises: a receiving module 310,configured to receive a first user request to open a targetcommunication window; a display module 320, configured to display thetarget communication window, and display a first message list in thetarget communication window with current display located to the positionof a recently-received communication message (e.g., the last-receivedcommunication message before the opening of the target communicationwindow); and a message list rollback module 330, configured to display asecond message list in the target communication window with currentdisplay located to the position of the target communication messageafter receiving a second user request (e.g., a preset interfaceoperation instruction), wherein the target communication message is anearlier-received communication message after the last closure of thetarget communication window.

Optionally, the display module 320 is further configured to display amessage list rollback button; the message list rollback module 330 isconfigured to display the message list in the target communicationwindow with current display located to the position of the targetcommunication message when receiving a click instruction correspondingto the message list rollback button.

Optionally, the display module 320 is further configured to: display themessage list rollback button if the number of the newly-receivedcommunication messages after the last closure of the targetcommunication window exceeds a preset number threshold; or, display themessage list rollback button if the corresponding display length of thenewly-received communication messages in the message list exceeds apreset length threshold after the last closure of the targetcommunication window.

Optionally, the display module 320 is further configured to: cancel themessage list rollback button when displaying the message list in thetarget communication window with current display located to the positionof the target communication message.

Optionally, the message list rollback module 330 is further configuredto display the message list in the target communication window withcurrent display located to the position of the target communicationmessage when receiving the interface operation instruction triggered bya touch signal satisfying the preset conditions.

In the embodiment of the present application, a computing devicereceives the first user request to open the target communication window,opens the target communication window, and display the message list inthe target communication window with current display located to theposition of a recently-received communication message (e.g., thelast-received communication message before the opening of the targetcommunication window); after receiving a second user request (e.g., apreset interface operation instruction), display the message list in thetarget communication window with current display located to the positionof the target communication message, wherein the target communicationmessage is an earlier-received communication message after the lastclosure of the target communication window. In this way, the currentdisplay of the message list may move directly to the position of anearlier-received communication message after the last closure of thetarget communication window through the preset interface operationinstruction, and the user does not need to scroll the message list tolook up, so that the information acquisition efficiency may be improved.

Embodiment 4

FIG. 4 shows a structural block diagram of a computing device related toin the embodiment of the present application. The computing device maybe applied to implement the method for managing the display of a set ofmessages associated with a group chat according to the foregoingembodiments. To be specific, the computing device 400 may comprise suchparts as a communication unit 110, a memory 120 comprising one or morethan one non-transitory computer readable storage medium, an input unit130, a display unit 140, a sensor 150, an audio circuit 160, a WIFI(Wireless Fidelity, wireless fidelity) module 170, a processorcomprising one or more than one processing core, a power supply 190 andthe like. Those skilled in the art may understand that the computingdevice structure shown in the figure, does not define the computingdevice; the computing device may comprise parts more or fewer than thatshown in the figure, or comprise combinations of some parts, ordifferent part arrangements. The communication unit 110 may beconfigured to receive and send signals during a process of informationtransceiving or talking. The communication unit 110 may be such networkcommunication equipment as an RF (Radio Frequency, radio frequency)circuit, a router, a modem and the like. Specially, when thecommunication unit 110 is an RF circuit, the RF circuit after receivesdownlink information from a base station, sends the information over toone or more than one processor 180 for processing. Moreover, the RFcircuit sends uplink data to the base station. Usually, the RF circuitserving as the communication unit comprises, but is not limited to anantenna, at least one amplifier, a tuner, one or more oscillators, asubscriber identity module (SIM) card, a transceiver, a couple, an LNA(Low Noise Amplifier, low noise amplifier), a duplexer and the like. Inaddition, the communication unit 110 may further be communicated withthe network or other devices through radio communications. Any ofcommunication standard or protocol may be used for radio communication,which comprises, but not limited to GSM (Global System of Mobilecommunication, global system of mobile communication), GPRS (GeneralPacket Radio Service, general packet radio service), CDMA (Code DivisionMultiple Access, code division multiple address), WCDMA (Wideband CodeDivision Multiple Access, wideband code division multiple address), LTE(Long Term Evolution, long term evolution), an email, SMS (ShortMessaging Service, short messaging service) and the like. The memory 120may be configured to store software programs and modules. The processor180 carries out various function applications and data processingthrough the software programs and modules stored in the memory 120. Thememory 120 may mainly comprise a program storage area and a data storagearea, wherein the program storage area may store the applications (suchas sound playing function, image playing function and the like) requiredby an operating system, at least one function and the like. The datastorage area may store the data (such as audio data, telephone directoryand the like) created according to the use of the computing device 800,and the like. In addition, the memory 120 may comprises a high speedrandom access memory, and may further comprises a non-volatile memory,for example, at least one disk memory device, a flash memory device orother volatile solid state memory devices. Accordingly, the memory 120may further comprise a memory controller so as to provide access of theprocessor 180 and the input unit 130 to the memory 120. The input unit130 may be configured to receive inputted number or characterinformation, and produce keyboard, mouse, joystick, optical or trackballsignal input related to user settings and function control. Preferably,the input unit 130 may comprise a touch-sensitive surface 131 and otherinput devices 132. The touch-sensitive surface 131 is also called atouch display screen or a touchpad, which may collect a touch operationof the user on or near the touch-sensitive surface (for example,operation of the user on the touch-sensitive surface 131 or near thetouch-sensitive surface 131 by using any proper object or accessory likefingers, stylus and the like), and drive a corresponding connectingdevice according to a preset program. Optionally, the touch-sensitivesurface 131 may comprise two parts which include a touch detectingdevice and a touch controller. The touch detecting device detects atouch position and direction of the user and a signal brought by thetouch operation, and transmits the signal to the touch controller. Thetouch controller receives touch information from the touch detectingdevice, and converts the touch information into contact coordinates, andthen transmits the contact coordinates to the processor 180. Moreover,the touch controller can receive and carry out an instruction sent bythe processor 180. Furthermore, the touch-sensitive surface 131 may beimplemented in various types such as resistor type, capacitance type,infrared rays, surface acoustic waves and the like. Except thetouch-sensitive surface, the input unit 130 may further comprise otherinput devices 132. Preferably, the other input devices 132 may comprise,but not limited to one or more of a physical keyboard, virtual(function) keys (such as volume control keys, switch keys etc.),trackballs, mouse, joysticks and the like. The display unit 140 may beconfigured to display the information provided by the user or theinformation provided to the user as well as various graphical userinterfaces of the computing device 400, wherein the graphical userinterfaces may be composed of graphs, texts, icons, videos and anycombination thereof. The display unit 140 may comprise a display panel141. Optionally, the display panel 141 may be configured by adoptingsuch forms as LCD (Liquid Crystal Display, liquid crystal display), OLED(Organic Light-Emitting Diode, organic light emitting diode) and thelike. Further, the touch-sensitive surface 131 may cover the displaypanel 141. When the touch-sensitive surface 131 detects the touchoperation on or near the touch-sensitive surface, the touch-sensitivesurface 131 transmits the touch operation to the processor 180 so as todetermine the type of a touch event. Afterwards, the processor 180provides corresponding visual output on the display panel 141 accordingto the type of the touch event. Although in FIG. 4, the touch-sensitivesurface 131 and the display panel 141 are served as two independentparts to realize input and output functions, in some embodiments, thetouch-sensitive surface 131 and the display panel 141 may be integratedto realize the input and output functions.

The computing device 400 may further comprise at least a sensor 150, forexample, a light sensor, a motion sensor and other sensors. The lightsensor may comprise an ambient light sensor and a proximity sensor,wherein the ambient light sensor may adjust the brightness of thedisplay panel 141 according to the lighting of the ambient light, andthe proximity sensor may close the display panel 141 and/or backlightwhen the computing device 400 approaches the ear. As one type of motionsensors, a gravity acceleration sensor may detect the acceleration ineach direction (usually in three axial directions), may detect the valueand direction of the gravity in a static state, may be used for anapplication used for recognizing a mobile phone gesture (such asswitching between a horizontal screen and a vertical screen, switchingrelated to a game, and calibration on the posture of a magnetometer),vibration identifying functions (such as for pedometer and striking) andthe like, in the touch screen computing device. Furthermore, agyroscope, a barometer, a humidity meter, a thermometer, an infraredsensor and other sensors may be integrated into the touch screencomputing device 400, to which explanation are not repeated herein.

The audio circuit 160, a loud speaker 161 and a microphone 162 mayprovide an audio interface between the user and the computing device400. The audio circuit 160 may transmit an electric signal convertedfrom the received audio data to the loud speaker 161, and the loudspeaker 161 converts the electric signal into a sound signal andoutputs. On the other hand, the microphone 162 converts the collectedsound signal into an electric signal. The audio circuit 160 receives theelectric signal and converts the electric signal into audio data, andthen outputs the audio data to the processor 180 to be processed so asto send the audio data to, for example, another computing device throughthe RF circuit 110 or output the audio data to the memory 120 forfurther processing. The audio circuit 160 may further possibly comprisean ear plug jack so as to provide communication between a peripheralearphone and the computing device 400. In order to realize radiocommunication, a radio communication unit 170 may be configured on thecomputing device, wherein the radio communication unit 170 may be a WIFImodule. WIFI belongs to a short distance radio transmission technology.The computing device 400 may help the user receive and send an Email,browse web pages and access streaming media and the like through theradio communication unit 170. The radio communication unit providesradio wideband internet access for the user. Although the radiocommunication unit 170 is shown in the FIG., it is understandable thatthe radio communication unit does not belong to a required component ofthe computing device 400, and may be completely omitted as requiredwithout changing the scope of the present application.

The processor 180 is the control center of the computing device 400,which utilizes various interfaces and lines to connect with each part ofthe entire mobile phone, and carries out various functions of thecomputing device 800, and processes data through operating or carryingout the software program and/or module stored in the memory 120 andcalling in the data stored in the memory 120, thus performing entiremonitoring on the mobile phone. Optionally, the processor 180 maycomprise one or more processing cores. Preferably, the processor 180 mayintegrate an application processor and a modulation-demodulationprocessor, wherein the application processor is mainly used for theoperating system, the user interface and applications and the like, andthe modulation-demodulation processor is mainly used for radiocommunication. It is understandable that the foregoingmodulation-demodulation processor may also not be integrated into theprocessor 180.

The computing device 800 further comprises a power supply 190 (such as abattery) that supplies power to each part. Preferably, the power supplymay be logically connected with the processor 180 through a power supplymanagement system, thus realizing to management of power charging, powerdischarging and power consumption and the like through the power supplymanagement system. The power supply 190 may further comprise anycomponent such as one or more direct current or alternating currentpower supplies, a recharging system, a power failure detection circuit,a power supply convertor or inverter, a power supply status indicatorand the like.

Although it is not shown in the FIG. 4, the computing device 400 mayfurther comprise a camera, a blue tooth module and the like, which willnot be repeatedly described herein.

In the embodiment, the computing device further comprises a memory andone or more than one program, wherein one or more than one program isstored in the memory, and one or more than one processor is configuredto carry out an instruction included in one or more than one program forperforming the method according to the embodiment of the presentapplication, comprising receiving the first user request to open thetarget communication window; displaying the target communication window,and locating a message list on the target communication window to theposition of the last-received communication message; and locating themessage list on the target communication window to the position of thetarget communication message after receiving a second user request(e.g., a preset interface operation instruction), wherein the targetcommunication message is an earlier-received communication message afterthe last closure of the target communication window.

Optionally, the method further comprises the steps of: displaying amessage list rollback button, wherein the locating the message list onthe target communication window to the position of the targetcommunication message after receiving a second user request (e.g., apreset interface operation instruction) comprises the step of: locatingthe message list on the target communication window to the position ofthe target communication message when receiving a click instructioncorresponding to the message list rollback button.

Optionally, displaying the message list rollback button comprises thesteps of: displaying the message list rollback button if the number ofthe newly-received communication messages after the last closure of thetarget communication window exceeds a preset number threshold; or,displaying the message list rollback button if the corresponding displaylength of the newly-received communication messages in the message listexceeds a preset length threshold after the last closure of the targetcommunication window.

Optionally, the method further comprises the step of: cancelling themessage list rollback button when displaying the message list in thetarget communication window with current display located to the positionof the target communication message. Optionally, displaying the messagelist in the target communication window with current display located tothe position of the target communication message after receiving asecond user request (e.g., a preset interface operation instruction)comprises the step of: displaying the message list in the targetcommunication window with current display located to the position of thetarget communication message when receiving the interface operationinstruction triggered by a touch signal satisfying the presetconditions.

In the embodiment of the present application, a computing devicereceives the first user request to open the target communication window,opens the target communication window, and displays the message list inthe target communication window with current display located to theposition of a recently-received communication message (e.g., thelast-received communication message before the opening of the targetcommunication window); after receiving a second user request (e.g., apreset interface operation instruction), displays the message list inthe target communication window with current display located to theposition of the target communication message, wherein the targetcommunication message is an earlier-received communication message afterthe last closure of the target communication window. In this way, thecurrent display of the message list may move directly to the position ofan earlier-received communication message after the last closure of thetarget communication window through the preset interface operationinstruction, and the user does not need to scroll the message list tolook up, so that the information acquisition efficiency may be improved.

It should be noted that the apparatus for displaying a message listaccording to the foregoing embodiments while displaying the message listis illustrated only according to the division of each functional moduleabove-mentioned; in practice, the foregoing function distribution iscompleted by different functional modules according to demands; that is,an internal structure of the apparatus is divided into differentfunctional modules, so as to accomplish all or part of the functionsdescribed above. Moreover, the apparatus for displaying a message listprovided in the foregoing embodiments and the embodiments of the methodfor managing the display of messages of a group chat belong to the sameconcept, and details of the specific implementation process of theapparatus can be seen in the embodiments of the method, which will notbe described any further herein.

While particular embodiments are described above, it will be understoodit is not intended to limit the invention to these particularembodiments. On the contrary, the invention includes alternatives,modifications and equivalents that are within the spirit and scope ofthe appended claims. Numerous specific details are set forth in order toprovide a thorough understanding of the subject matter presented herein.But it will be apparent to one of ordinary skill in the art that thesubject matter may be practiced without these specific details. In otherinstances, well-known methods, procedures, components, and circuits havenot been described in detail so as not to unnecessarily obscure aspectsof the embodiments.

Although the terms first, second, etc. may be used herein to describevarious elements, these elements should not be limited by these terms.These terms are only used to distinguish one element from another. Forexample, first ranking criteria could be termed second ranking criteria,and, similarly, second ranking criteria could be termed first rankingcriteria, without departing from the scope of the present application.First ranking criteria and second ranking criteria are both rankingcriteria, but they are not the same ranking criteria.

The terminology used in the description of the invention herein is forthe purpose of describing particular embodiments only and is notintended to be limiting of the invention. As used in the description ofthe invention and the appended claims, the singular forms “a,” “an,” and“the” are intended to include the plural forms as well, unless thecontext clearly indicates otherwise. It will also be understood that theterm “and/or” as used herein refers to and encompasses any and allpossible combinations of one or more of the associated listed items. Itwill be further understood that the terms “includes,” “including,”“comprises,” and/or “comprising,” when used in this specification,specify the presence of stated features, operations, elements, and/orcomponents, but do not preclude the presence or addition of one or moreother features, operations, elements, components, and/or groups thereof.

As used herein, the term “if” may be construed to mean “when” or “upon”or “in response to determining” or “in accordance with a determination”or “in response to detecting,” that a stated condition precedent istrue, depending on the context. Similarly, the phrase “if it isdetermined [that a stated condition precedent is true]” or “if [a statedcondition precedent is true]” or “when [a stated condition precedent istrue]” may be construed to mean “upon determining” or “in response todetermining” or “in accordance with a determination” or “upon detecting”or “in response to detecting” that the stated condition precedent istrue, depending on the context.

Although some of the various drawings illustrate a number of logicalstages in a particular order, stages that are not order dependent may bereordered and other stages may be combined or broken out. While somereordering or other groupings are specifically mentioned, others will beobvious to those of ordinary skill in the art and so do not present anexhaustive list of alternatives. Moreover, it should be recognized thatthe stages could be implemented in hardware, firmware, software or anycombination thereof.

The foregoing description, for purpose of explanation, has beendescribed with reference to specific implementations. However, theillustrative discussions above are not intended to be exhaustive or tolimit the invention to the precise forms disclosed. Many modificationsand variations are possible in view of the above teachings. Theimplementations were chosen and described in order to best explainprinciples of the invention and its practical applications, to therebyenable others skilled in the art to best utilize the invention andvarious implementations with various modifications as are suited to theparticular use contemplated. Implementations include alternatives,modifications and equivalents that are within the spirit and scope ofthe appended claims. Numerous specific details are set forth in order toprovide a thorough understanding of the subject matter presented herein.But it will be apparent to one of ordinary skill in the art that thesubject matter may be practiced without these specific details. In otherinstances, well-known methods, procedures, components, and circuits havenot been described in detail so as not to unnecessarily obscure aspectsof the implementations.

What is claimed is:
 1. A computer-implemented method of managing displayof communication items in a target communication window of a computingdevice, the method comprising: at the computing device having one ormore processors and memory for storing program modules to be executed bythe processors: receiving a first user request to open the targetcommunication window on a display screen, wherein the targetcommunication window is configured to display a sequentially orderedlisting of communication items; in response to receiving the first userrequest: opening the target communication window; and upon opening thetarget communication window, displaying a first subset of communicationitems from the sequentially ordered listing of communication items inthe target communication window, without concurrently displaying asecond subset of communication items and a third subset of communicationitems from the sequentially ordered listing of communication items inthe target communication window, wherein: the first, second, and thirdsubsets of communication items have been received by the computingdevice after last closure of the target communication window, and thefirst subset of communications have been received after the secondsubset of communication items, and the second subset of communicationitems have been received after the third subset of communication items;while displaying the first subset of communication items from thesequentially ordered listing of communication items in the targetcommunication window, without concurrently displaying the second subsetof communication items and the third subset of communication items fromthe sequentially ordered listing of communication items in the targetcommunication window, detecting a second user request to display earlierreceived communication items; and in response to receiving the seconduser request to display earlier received communication items and inaccordance with a determination that the second user request meetspredefined list rollback criteria: ceasing to display the first subsetof communication items in the target communication window; anddisplaying the third subset of communication items in the targetcommunication window, without first displaying the second subset ofcommunication items in the target communication window.
 2. The method ofclaim 1, wherein the first subset of communication items include alast-received communication item among a group of communication itemsreceived after the last closure of the target communication window, andthe third subset of communication items include a first-receivedcommunication item among the group of communication items received afterthe last closure of the target communication window.
 3. The method ofclaim 1, including: when displaying the third subset of communicationitems in the target communication window, concurrently displaying one ormore communication items that are received prior to the last closure ofthe target communication window.
 4. The method of claim 3, including: inresponse to receiving the second user request to display earlierreceived communication items, identifying the one or more communicationitems that are received prior to the last closure of the targetcommunication window based on content of the third subset ofcommunication items and content of the one or more communication itemsthat are received prior to the last closure of the target communicationwindow.
 5. The method of claim 1, including: in response to receivingthe first user request: upon opening the target communication window,displaying a list rollback affordance with the first subset ofcommunication items in the target communication window.
 6. The method ofclaim 5, wherein the predefined list rollback criteria require that thesecond user request includes a user input that activates the listrollback affordance.
 7. The method of claim 6, including: in response toreceiving the second user request to display earlier receivedcommunication items and in accordance with a determination that thesecond user request meets predefined list rollback criteria, ceasing todisplay the list rollback affordance after the third subset ofcommunication items are displayed in the target communication window. 8.A computing device, comprising: one or more processors; and memorystoring instructions, the instructions, when executed by the one or moreprocessors, cause the processors to perform operations for managingdisplay of communication items in a target communication window, theoperations comprising: receiving a first user request to open the targetcommunication window on a display screen, wherein the targetcommunication window is configured to display a sequentially orderedlisting of communication items; in response to receiving the first userrequest: opening the target communication window; and upon opening thetarget communication window, displaying a first subset of communicationitems from the sequentially ordered listing of communication items inthe target communication window, without concurrently displaying asecond subset of communication items and a third subset of communicationitems from the sequentially ordered listing of communication items inthe target communication window, wherein: the first, second, and thirdsubsets of communication items have been received by the computingdevice after last closure of the target communication window, and thefirst subset of communications have been received after the secondsubset of communication items, and the second subset of communicationitems have been received after the third subset of communication items;while displaying the first subset of communication items from thesequentially ordered listing of communication items in the targetcommunication window, without concurrently displaying the second subsetof communication items and the third subset of communication items fromthe sequentially ordered listing of communication items in the targetcommunication window, detecting a second user request to display earlierreceived communication items; and in response to receiving the seconduser request to display earlier received communication items and inaccordance with a determination that the second user request meetspredefined list rollback criteria: ceasing to display the first subsetof communication items in the target communication window; anddisplaying the third subset of communication items in the targetcommunication window, without first displaying the second subset ofcommunication items in the target communication window.
 9. The computingdevice of claim 8, wherein the first subset of communication itemsinclude a last-received communication item among a group ofcommunication items received after the last closure of the targetcommunication window, and the third subset of communication itemsinclude a first-received communication item among the group ofcommunication items received after the last closure of the targetcommunication window.
 10. The computing device of claim 8, wherein theoperations include: when displaying the third subset of communicationitems in the target communication window, concurrently displaying one ormore communication items that are received prior to the last closure ofthe target communication window.
 11. The computing device of claim 10,wherein the operations include: in response to receiving the second userrequest to display earlier received communication items, identifying theone or more communication items that are received prior to the lastclosure of the target communication window based on content of the thirdsubset of communication items and content of the one or morecommunication items that are received prior to the last closure of thetarget communication window.
 12. The computing device of claim 8,wherein the operations include: in response to receiving the first userrequest: upon opening the target communication window, displaying a listrollback affordance with the first subset of communication items in thetarget communication window.
 13. The computing device of claim 12,wherein the predefined list rollback criteria require that the seconduser request includes a user input that activates the list rollbackaffordance.
 14. The computing device of claim 13, wherein the operationsinclude: in response to receiving the second user request to displayearlier received communication items and in accordance with adetermination that the second user request meets predefined listrollback criteria, ceasing to display the list rollback affordance afterthe third subset of communication items are displayed in the targetcommunication window.
 15. A non-transitory computer-readable storagemedium storing instructions, the instructions, when executed by one ormore processors of a computing device, cause the processors to performoperations for managing display of communication items in a targetcommunication window, the operations comprising: receiving a first userrequest to open the target communication window on a display screen,wherein the target communication window is configured to display asequentially ordered listing of communication items; in response toreceiving the first user request: opening the target communicationwindow; and upon opening the target communication window, displaying afirst subset of communication items from the sequentially orderedlisting of communication items in the target communication window,without concurrently displaying a second subset of communication itemsand a third subset of communication items from the sequentially orderedlisting of communication items in the target communication window,wherein: the first, second, and third subsets of communication itemshave been received by the computing device after last closure of thetarget communication window, and the first subset of communications havebeen received after the second subset of communication items, and thesecond subset of communication items have been received after the thirdsubset of communication items; while displaying the first subset ofcommunication items from the sequentially ordered listing ofcommunication items in the target communication window, withoutconcurrently displaying the second subset of communication items and thethird subset of communication items from the sequentially orderedlisting of communication items in the target communication window,detecting a second user request to display earlier receivedcommunication items; and in response to receiving the second userrequest to display earlier received communication items and inaccordance with a determination that the second user request meetspredefined list rollback criteria: ceasing to display the first subsetof communication items in the target communication window; anddisplaying the third subset of communication items in the targetcommunication window, without first displaying the second subset ofcommunication items in the target communication window.
 16. Thenon-transitory computer-readable storage medium of claim 15, wherein thefirst subset of communication items include a last-receivedcommunication item among a group of communication items received afterthe last closure of the target communication window, and the thirdsubset of communication items include a first-received communicationitem among the group of communication items received after the lastclosure of the target communication window.
 17. The non-transitorycomputer-readable storage medium of claim 15, wherein the operationsinclude: when displaying the third subset of communication items in thetarget communication window, concurrently displaying one or morecommunication items that are received prior to the last closure of thetarget communication window.
 18. The non-transitory computer-readablestorage medium of claim 17, wherein the operations include: in responseto receiving the second user request to display earlier receivedcommunication items, identifying the one or more communication itemsthat are received prior to the last closure of the target communicationwindow based on content of the third subset of communication items andcontent of the one or more communication items that are received priorto the last closure of the target communication window.
 19. Thenon-transitory computer-readable storage medium of claim 15, wherein theoperations include: in response to receiving the first user request:upon opening the target communication window, displaying a list rollbackaffordance with the first subset of communication items in the targetcommunication window.
 20. The non-transitory computer-readable storagemedium of claim 19, wherein the predefined list rollback criteriarequire that the second user request includes a user input thatactivates the list rollback affordance.